package com.oneinlet

import com.oneinlet.YCache.ExpireEvent
import com.oneinlet.YCache.newCache
import org.junit.Test

class TestYCache {

    @Test
    fun testCache() {

        val cache = newCache(1, 1000, object : ExpireEvent {
            override fun handleEvent(key: String, value: Any) {
                println("缓存过期，触发事件，缓存的key：$key, 缓存的value: $value")
            }
        })

        for (i in 1..1000) {
            cache.putKeyValue(i.toString(), YCString.generateRandomChar(8), i)
            println("当前添加第 $i 个， 缓存容量是: ${cache.size}")
        }

        println("=================================================")

        for (i in 1..10) {
            println("当前获取值  key ： $i ， value: ${cache.getValue<String>(i.toString())}")
        }

        while (true) {

        }

    }
}
